Mobile communications devices such as cell phones are gaining wider acceptance. The increased popularity of cell phones is due, in part, to the capabilities being added to such devices. Far from being simple voice communications tools, modern cell phones and other mobile devices are increasingly capable of performing general purpose computing tasks. The combination of power and portability of such devices has resulted in the widespread adoption of personal digital communications.
One factor that is expected to increase the popularity of mobile devices is the development of third generation (3G) technologies. The “3G” designation refers to a collection of standards and technologies that can be used in the near future to enhance performance and increase data speed on cell phone networks. In particular, 3G is an International Telecommunication Union (ITU) specification for the third generation of mobile communications technology. A 3G cell phone would, in theory, be compatible with the 3G languages or standards which support enhanced data speeds.
The 3G infrastructure aims to provide packet-switched data to a handheld terminal with data bandwidth measured in hundreds of Kbits/sec. It is intended that 3G will work over wireless air interfaces such as Code Division Multiple Access (CDMA), Wideband CDMA (W-CDMA), and the Time Division Multiple Access (TDMA) based General Packet Radio Service (GPRS). The latter interface is included in the Enhanced Data for GSM, Environment (EDGE) air interface that has been developed specifically to meet the bandwidth needs of 3G cell phones.
Along with increased network bandwidth capability, 3G cell phones will also include increased processing power due to advances in processors and memory. This will provide improved data processing capabilities, thus allowing 3G cell phones to handle applications currently associated with traditional computers. These applications typically include Internet communication applications such as email and web browsing. Since the cell phones are highly portable, this only increases the usefulness of Internet applications.
The power and portability of 3G mobile communications devices will make such devices indispensable, both in and away from the user's homes. However, providing additional capabilities via mobile communications devices may require adapting the devices in ways that may not have been envisioned in the design of mobile communications architectures. For example, earlier communications devices had limited capabilities, and therefore typically dealt with a limited set of data formats optimized for particular terminal software, hardware, and networks. However, 3G devices may be called upon to run more sophisticated applications that deal with a wide variety of data formats. This may expose users to data compatibility problems.
The data paradigm with which most computer users are familiar with is an application data-format paradigm. In this paradigm, each data-format on the system is associated with one or more applications. A data-format generally includes the type and arrangement of bytes in an instantiation of the data type. For example, a BMP formatted bitmap file is arranged in a particular binary data format. An application that is associated with a BMP file typically has facilities for opening the file, determining the image size and color information by reading a binary header, then constructing a view of the image based on the data contained in the remainder of the file.
The application data-format paradigm of computing is familiar to most experienced computer users, although can be confusing for novices. When communicating content from one user to the other, the content is formed using a particular file format. For example, a user might send a word processing document to another user attached to an email. If the recipient of the email does not have an application that can read the document format, the attachment is of no use. Therefore, the usefulness of the document is proportional to how widely viewable the format of the document is.
Technologies such as the Internet and the World Wide Web have done much to ensure interoperability of data formats. In particular, the Web has popularized open standards such as the Hypertext Markup Language (HTML). HTML can be used for presenting text and graphics in a way that is compatible with diverse computing platforms. Other technologies, such as the Extensible Markup Language (XML), can potentially provide interoperability for almost any kind of data, and not just documents for browser display.
The advantages of HTML and XML are that that documents prepared in these formats can be consistently interpreted by a wide variety of programs. These documents are most commonly viewed on browsers, but can be viewed with other applications, such as email clients and word processors. The browser has freed users from having to worry about reading data formats. This allows the users to concentrate their efforts on the useful aspects of the Web, i.e., viewing its content.
Even though standardized markup languages are useful in presenting data, these formats are not always the first choice when creating content. Various specialized programs exist in which to import and manipulate photos, edit text, conduct Internet chat session, create vector graphics, or perform other content-creation tasks. These specialized programs are often favored by users due to ease of use, special features, familiarity, and other aspects of the programs. Presenting data for the Web typically involves importing content created in these specialized applications and arranging that content into Web-compatible documents. Whenever the original content is changed, the Web page must be updated to reflect changes in the original content.
The conversion of data between various formats can be tedious, time-consuming, and error prone. This is why many Web pages fail to be updated. The user may still be creating content, such as writing in a journal or taking digital pictures, but that newer content is less likely to be publicly available if the user does not expend the effort to update the Web page. The initial interest in creating the first Web page is often overcome by the tedium involved in continually updating the documents, and thus the page remains static.
What is needed, then, is a way of empowering users to publish content in a standard fashion without requiring tedious formatting and conversion of data. The capability is especially useful in mobile devices, where the user may be able to create original content spontaneously, but would find it unduly difficult to manually format and publish that content using that same device.